package com.app.couponsharelife.data.remote.retrofit

import com.app.couponsharelife.data.bean.*
import io.reactivex.Observable
import okhttp3.RequestBody
import retrofit2.http.*

/**
 * Created by guluwa on 2018/1/11.
 */

interface ApiService {
    /**
     * 刷新用户登录token接口 token
     */
    @POST("app/Send/freshToken")
    @FormUrlEncoded
    fun freshToken(@FieldMap map: Map<String, String>): Observable<ResultBean<TokenBean>>

    /**
     * 首页接口
     */
    @POST("app/Banner/index")
    @FormUrlEncoded
    fun loadHomePage(@FieldMap map: Map<String, String>): Observable<ResultBean<HomePageBean>>

    /**
     * 获取淘宝客选品库商品
     */
    @POST("app/TaobaoItem/itemLibrary")
    @FormUrlEncoded
    fun getGroupGoods(@FieldMap map: Map<String, String>): Observable<ResultBean<GroupGoodBean>>

    /**
     * 获取后台设置分佣比例
     */
    @POST("app/Banner/setEarn")
    @FormUrlEncoded
    fun getEarnData(@FieldMap map: Map<String, String>): Observable<ResultBean<EarnDataBean>>

    /**
     * 一级分类
     */
    @POST("app/Category/showCategory")
    @FormUrlEncoded
    fun getPrimarySorts(@FieldMap map: Map<String, String>): Observable<ResultBean<PrimarySortBean>>

    /**
     * 二级分类
     */
    @POST("app/Category/showSecondCategory")
    @FormUrlEncoded
    fun getSecondarySorts(@FieldMap map: Map<String, String>): Observable<ResultBean<SecondarySortBean>>

    /**
     * 通用物料搜索
     */
    @POST("app/TaobaoItem/optional")
    @FormUrlEncoded
    fun optionalSearch(@FieldMap map: Map<String, String>): Observable<ResultBean<OptionalGoodBean>>

    /**
     * 淘口令
     */
    @POST("app/TaobaoItem/word")
    @FormUrlEncoded
    fun getTaoKouLing(@FieldMap map: Map<String, String>): Observable<ResultBean<TaokoulingBean>>
    /**
     * 新淘口令
     */
    @POST("app/item/createTbkTpwd")
    @Headers("url_type:remote")
    fun getTKLing(@Body param: RequestBody): Observable<RemoteResultBean<String>>
    /**
     * 分享信息写入后台接口
     */
    @POST("qxsh/app/share/save")
    @Headers("url_type:remote")
    fun saveShareItemInfo(@Body param: RequestBody): Observable<RemoteResultBean<String>>
    /**
     * 新的分享信息写入后台接口
     */
    @POST("qxsh/app/share/saveData")
    @Headers("url_type:remote")
    fun newSaveShareItemInfo(@Body param: RequestBody): Observable<RemoteResultBean<String>>

    /**
     * 商品分享后增加券力值
     */
    @GET("qxsh/app/article/shareDay")
    @Headers("url_type:remote")
    fun shareDay(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<String>>

    /**
     * 每日爆款和宣传素材接口
     */
    @POST("qxsh/app/Article/listInfo")
    @Headers("url_type:remote")
    fun getCircleShare(@Body param: RequestBody): Observable<ResultBean<ShareCircleBean>>
    /**
     * 每日爆款和宣传素材分享回调
     */
    @POST("app/Article/share")
    @FormUrlEncoded
    fun circleShareSuccess(@FieldMap map: Map<String, String>): Observable<ResultBean<Any>>

    /**
     * 密码登录
     */
    @POST("app/Member/passLogin")
    @FormUrlEncoded
    fun passwordLogin(@FieldMap map: Map<String, String>): Observable<ResultBean<TokenBean>>
    /**
     * 新的密码登录
     */
    @POST("qxsh/app/pwdLogin")
    @Headers("url_type:remote")
    fun newPwdLogin(@Body param: RequestBody): Observable<RemoteResultBean<NewBindPhoneBean>>
    /**
     * todo 到底去不去member
     * 验证码登录
     */
    @POST("app/Member/codeLogin")
    @FormUrlEncoded
    fun checkCodeLogin(@FieldMap map: Map<String, String>): Observable<ResultBean<TokenBean>>

    /**
     * 验证码登录发送验证码
     */
    @POST("app/Send/sendCodeLogin")
    @FormUrlEncoded
    fun checkCodeLoginSend(@FieldMap map: Map<String, String>): Observable<ResultBean<Any>>


    /**
     * todo
     * 注册
     */
    @POST("app/Member/register")
    @FormUrlEncoded
    fun userRegister(@FieldMap map: Map<String, String>): Observable<ResultBean<TokenBean>>

    /**
     * 注册发送验证码
     */
    @POST("app/Send/sendInfo")
    @FormUrlEncoded
    fun userRegisterCheckCode(@FieldMap map: Map<String, String>): Observable<ResultBean<Any>>

    /**
     * todo
     * 退出登录/wxLogin
     */
    @POST("app/Seller/logout")
    @FormUrlEncoded
    fun userLogOut(@FieldMap map: Map<String, String>): Observable<ResultBean<Any>>
    /**
     * 微信登录
     */
    @POST("qxsh/app/wxLogin")
    @Headers("url_type:remote")
    fun wxLogin(@Body param: RequestBody): Observable<RemoteResultBean<NewBindPhoneBean>>
    /**
     * 微信注册登录
     */
    @POST("qxsh/app/register")
    @Headers("url_type:remote")
    fun wxRegister(@Body param: RequestBody): Observable<RemoteResultBean<NewBindPhoneBean>>
    /**
     * 个人中心
     */
    @GET("qxsh/app/user/getInfo")
    @Headers("url_type:remote")
    fun userCenter(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<UserCenterBean>>

    /**
     * 用户团队信息
     */
    @GET("qxsh/app/user/team/getUserInfo")
    @Headers("url_type:remote")
    fun getUserTeamInfo(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<UserTeamInfoBean>>

    /**
     * 用户团队列表
     */
    @GET("qxsh/app/user/team/getPage")
    @Headers("url_type:remote")
    fun getUserTeamList(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<UserTeamMemberBean>>
    /**
     * 用户团队成员搜索列表
     */
    @GET("qxsh/app/user/team/searchPage")
    @Headers("url_type:remote")
    fun getSearchTeamList(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<UserTeamMemberBean>>

    /**
     * 获得收益基础数据
     */
    @GET("qxsh/app/user/earnings/getBase")
    @Headers("url_type:remote")
    fun getUserProfit(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<UserProfitBean>>

    /**
     * 收益记录
     */
    @GET("qxsh/app/user/earnings/getEarningsPage")
    @Headers("url_type:remote")
    fun getProfitRecords(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<ProfitRecordsBean>>

    /**
     * 提现记录
     */
    @GET("qxsh/app/user/earnings/getWithdrawDeposit")
    @Headers("url_type:remote")
    fun getWithdrawRecords(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<WithdrawRecordsBean>>

    /**
     * 用户支付宝信息
     */
    @GET("qxsh/app/user/earnings/getAliPay")
    @Headers("url_type:remote")
    fun getAlipayInfo(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<AlipayInfoBean>>

    /**
     * 用户签到
     */
    @GET("qxsh/app/couponWorkshop/signIn")
    @Headers("url_type:remote")
    fun userSign(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<Any>>

    /**
     * 用户签到信息
     */
    @GET("qxsh/app/couponWorkshop/getSignInInfo")
    @Headers("url_type:remote")
    fun getUserSignInfo(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<SignInfoBean>>

    /**
     * 发送验证码
     */
    @POST("qxsh/app/sendCode")
    @Headers("url_type:remote")
    fun sendCheckCode(@Body param: RequestBody): Observable<RemoteResultBean<Any>>

    /**
     * 用户绑定支付宝
     */
    @POST("qxsh/app/user/earnings/bindAliPay")
    @Headers("url_type:remote")
    fun bindAlipay(@Body param: RequestBody): Observable<RemoteResultBean<Any>>

    /**
     * 支付宝提现
     */
    @POST("qxsh/app/user/earnings/addWithdrawDepositApply")
    @Headers("url_type:remote")
    fun addWithdrawApply(@Body param: RequestBody): Observable<RemoteResultBean<Any>>

    /**
     * 券金
     */
    @GET("qxsh/app/couponWorkshop/getCouponKing")
    @Headers("url_type:remote")
    fun getCouponKing(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<CouponMoneyBean>>

    /**
     * 券金记录
     */
    @GET("qxsh/app/couponWorkshop/getCouponKingRecordPage")
    @Headers("url_type:remote")
    fun getCouponKingRecordPage(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<CouponMoneyRecordBean>>

    /**
     * 券力记录
     */
    @GET("qxsh/app/couponWorkshop/getCouponForceRecordPage")
    @Headers("url_type:remote")
    fun getCouponForceRecordPage(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<CouponMoneyRecordBean>>

    /**
     * 领取券金
     */
    @POST("qxsh/app/couponWorkshop/addCouponKing")
    @Headers("url_type:remote")
    fun addCouponKing(@Body param: RequestBody): Observable<RemoteResultBean<Any>>

    /**
     * 更改用户信息
     */
    @POST("qxsh/app/user/updateUser")
    @Headers("url_type:remote")
    fun updateUser(@Body param: RequestBody): Observable<RemoteResultBean<Any>>

    /**
     * base64图片上传
     */
    @POST("qxsh/app/fileUpload/base64Save")
    @Headers("url_type:remote")
    fun uploadPicBase64(@Body param: RequestBody): Observable<RemoteResultBean<Any>>

    /**
     * 用户是否存在
     */
    @POST("qxsh/app/user/getUserIsCorrect")
    @Headers("url_type:remote")
    fun getUserIsCorrect(@Body param: RequestBody): Observable<RemoteResultBean<Any>>

    /**
     * todo
     * 修改密码
     */
    @POST("qxsh/app/user/updatePassword")
    @Headers("url_type:remote")
    fun updatePassword(@Body param: RequestBody): Observable<RemoteResultBean<Any>>
    /**
     * 修改密码
     */
    @POST("qxsh/app/updatePassword")
    @Headers("url_type:remote")
    fun forgetPsw(@Body param: RequestBody): Observable<RemoteResultBean<NewBindPhoneBean>>
    /**
     * 获取用户标签
     */
    @GET("qxsh/app/user/tag/getAll")
    @Headers("url_type:remote")
    fun getAllTag(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<UserTagBean>>>

    /**
     * 保存用户标签
     */
    @POST("qxsh/app/user/tag/saveTag")
    @Headers("url_type:remote")
    fun saveTag(@Body param: RequestBody): Observable<RemoteResultBean<Any>>

    /**
     * 常见问题
     */
    @GET("qxsh/app/user/faq/getAll")
    @Headers("url_type:remote")
    fun getCommonProblems(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<CommonProblemBean>>>

    /**
     * 多图上传
     */
    @POST("qxsh/app/fileUpload/singleSaveAll")
    @Headers("url_type:remote")
    fun uploadMultiPics(@Body param: RequestBody): Observable<RemoteResultBean<Any>>

    /**
     * 问题反馈
     */
    @POST("qxsh/app/problemFeedback/add")
    @Headers("url_type:remote")
    fun addFeedback(@Body param: RequestBody): Observable<RemoteResultBean<Any>>

    /**
     * 订单
     */
    @GET("qxsh/app/order/getPage")
    @Headers("url_type:remote")
    fun getOrderList(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<TaobaoOrderBean>>

    /**
     * 新的订单列表接口
     */
    @GET("qxsh/app/order/getPage")
    @Headers("url_type:remote")
    fun getNewOrderList(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<TaobaoOrderBean>>
    /**
     * 收藏列表
     */
    @GET("qxsh/app/collect/getPage")
    @Headers("url_type:remote")
    fun getCollectList(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<CollectListBean>>

    /**
     * 添加收藏/bind
     */
    @POST("qxsh/app/collect/save")
    @Headers("url_type:remote")
    fun addCollect(@Body param: RequestBody): Observable<RemoteResultBean<Any>>

    /**
     * 商品是否收藏
     */
    @GET("qxsh/app/collect/haveCollect")
    @Headers("url_type:remote")
    fun isGoodCollect(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<Any>>

    /**
     * 取消收藏
     */
    @GET("qxsh/app/collect/delete")
    @Headers("url_type:remote")
    fun cancelCollect(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<Any>>

    /**
     * 本地生活首页
     */
    @GET("qxsh/app/life/getBase")
    @Headers("url_type:remote")
    fun getLifeHomePage(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<LifeHomePageBean>>

    /**
     * 本地生活分类搜索
     */
    @GET("qxsh/app/life/getShopPage")
    @Headers("url_type:remote")
    fun getLifeShopPage(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<LifeShopPageBean>>

    /**
     * 本地生活热搜
     */
    @GET("qxsh/app/life/getHotKeyword")
    @Headers("url_type:remote")
    fun getLifeHotKeyword(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<String>>>

    /**
     * 本地生活店铺详情
     */
    @GET("qxsh/app/life/getShopInfo")
    @Headers("url_type:remote")
    fun getLifeShopInfo(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<LifeShopPageBean.RecordsBean>>

    /**
     * 本地生活优惠券详情
     */
    @GET("qxsh/app/life/getCardInfo")
    @Headers("url_type:remote")
    fun getLifeCardInfo(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<LifeShopPageBean.CardsBean>>

    /**
     * 支付结果页面 新卡券
     */
    @GET("qxsh/app/life/getOneCard")
    @Headers("url_type:remote")
    fun getLifeNewCard(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<LifeShopPageBean.CardsBean>>

    /**
     * 计算金额
     */
    @POST("qxsh/app/life/payMoneyCalculate")
    @Headers("url_type:remote")
    fun payMoneyCalculate(@Body param: RequestBody): Observable<RemoteResultBean<PayMoneyBean>>

    /**
     * 商品热搜
     */
    @GET("qxsh/app/item/getHotKeyword")
    @Headers("url_type:remote")
    fun getHotKeyword(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<String>>>

    /**
     * 个人中心 推荐商品
     */
    @GET("qxsh/app/user/getRecommendPage")
    @Headers("url_type:remote")
    fun getRecommendPage(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<UserCenterGoodBean>>

    /**
     * 首页淘宝二级页
     */
    @GET("qxsh/app/index/getTaobaoTablePage")
    @Headers("url_type:remote")
    fun getTaobaoTablePage(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<TaobaoTablePageBean>>

    /**
     * /index/getBase
     * 注册通知
     */
    @GET("qxsh/app/inform")
    @Headers("url_type:remote")
    fun registerInform(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<Any>>
    /**
     * 首页主要数据
     */
    @GET("qxsh/app/index/getBase")
    @Headers("url_type:remote")
    fun getHomeBase(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<HomeBaseBean>>
    /**
     * 首页主要数据
     */
    @GET("qxsh/app/index/getClazz")
    @Headers("url_type:remote")
    fun getHomeClass(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<HomeClassBean>>>

    /**
     * 新首页主要数据
     */
    @GET("qxsh/revision/indexAndroidPage/getFirstClassify")
    @Headers("url_type:remote")
    fun getNewHomeClass(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<HomeClassBean>>>

    /**
     * 新首页二级分类数据
     */
    @GET("qxsh/revision/indexPage/getSecondClassify")
    @Headers("url_type:remote")
    fun getHomeTwoClass(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<HomeClassBean>>>

    /**
     * 新首页分类商品
     */
    @GET("qxsh/revision/indexPage/getClassifyProduct")
    @Headers("url_type:remote")
    fun getClassifyProduct(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<SearchTBGoodsListBean>>

    /**
     * 新首页精选数据
     */
    @GET("qxsh/revision/indexAndroidPage/getNewBase")
    @Headers("url_type:remote")
    fun getNewBase(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<HomeBaseBean>>

    /**
     * 新首页秒杀商品数据
     */
    @GET("qxsh/revision/indexPage/getSpikeProduct")
    @Headers("url_type:remote")
    fun getMSGoods(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<HomeChiocenGoodsBean>>

    /**
     * 首页分类商品/index/getBroadcast
     */
    @GET("qxsh/app/index/getFavoritesItemPage")
    @Headers("url_type:remote")
    fun getFavoritesItemPage(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<HomeChiocenGoodsBean>>

    /**
     * 首页分类商品
     */
    @GET("qxsh/app/index/getBroadcast")
    @Headers("url_type:remote")
    fun getBroadcast(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<HomeBroadcastBean>>>
    /**
     * 绑定手机号码
     */
    @POST("qxsh/app/bind")
    @Headers("url_type:remote")
    fun bindPhone(@Body param: RequestBody): Observable<RemoteResultBean<NewBindPhoneBean>>

    /**
     * 绑定微信号
     */
    @POST("qxsh/app/user/bind")
    @Headers("url_type:remote")
    fun bindWX(@Body param: RequestBody): Observable<RemoteResultBean<String>>
    /**
     *
     * 本地生活基本数据
     */
    @GET("qxsh/local/life/getBase")
    @Headers("url_type:remote")
    fun lifeGetBase(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<LifeBaseBean>>
    /**
     *
     * 本地生活推荐页面分页店铺数据/card/getWxCardList
     */
    @GET("qxsh/local/life/getShopPage")
    @Headers("url_type:remote")
    fun lifeGetShopPage(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<LifeShopBean>>

    /**
    * 本地生活推荐页面分页店铺数据
    */
    @GET("qxsh/local/card/getWxCardList")
    @Headers("url_type:remote")
    fun getWxCardList(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<LifeWXCardBean>>>

    /**
     * 本地生活推荐页面分页店铺数据
     */
    @GET("jkpay/api/posservice/CouponGetCardExt")
    @Headers("url_type:wxcard")
    fun getWxCardExt(@QueryMap map: Map<String, String>): Observable<WXExtBean>

    /**
     * 本地生活店铺详情页面数据/card/getWxCardPage
     */
    @GET("qxsh/local/life/getShopInfo")
    @Headers("url_type:remote")
    fun getShopInfo(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<LifeShopRecord>>

    /**
     * 本地生活店铺详情页面数据/life/getHotKeyword
     */
    @GET("qxsh/local/card/getWxCardPage")
    @Headers("url_type:remote")
    fun getWxCardPage(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<LifeDetailsCouponBean>>

    /**
     * 本地生活店铺详情页面数据/goods/getClazz
     */
    @GET("qxsh/local/life/getHotKeyword")
    @Headers("url_type:remote")
    fun getLifeHotKey(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<String>>>

    /**
     * 获取拼多多分类数据
     */
    @GET("qxsh/app/goods/getClazz")
    @Headers("url_type:remote")
    fun getPDDClass(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<HomeClassBean>>>

    /**
     * 获取京东分类数据
     */
    @GET("qxsh/app/jdGoods/getClazz")
    @Headers("url_type:remote")
    fun getJDClass(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<HomeClassBean>>>
    /**
     * 获取京东商品列表数据
     */
    @GET("qxsh/app/jdGoods/getPage")
    @Headers("url_type:remote")
    fun getJDGoodsList(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<JDGoodsListBean>>

    /**
     * 获取京东优惠商品推广链接
     */
    @POST("qxsh/app/jdGoods/createCouponlink")
    @Headers("url_type:remote")
    fun getJDCouponlink(@Body param: RequestBody): Observable<RemoteResultBean<String>>
    /**
     * 获取京东优惠商品推广链接(微信)
     */
    @POST("qxsh/app/jdGoods/createWxlink")
    @Headers("url_type:remote")
    fun getJDWXCouponlink(@Body param: RequestBody): Observable<RemoteResultBean<String>>
    /**
     * 获取拼多多分类商品
     */
    @GET("qxsh/app/goods/findPage")
    @Headers("url_type:remote")
    fun getPDDGoodsList(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<PDDGoodsListBean>>

    /**
     * 获取拼多多商品详情
     */
    @GET("qxsh/app/goods/getGoodsDetails")
    @Headers("url_type:remote")
    fun getPDDGoodsDetails(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<PddGoodsDetailsBean>>>

    /**
     * 获取拼多多分类商品
     */
    @POST("qxsh/app/goods/createPromotionUrl")
    @Headers("url_type:remote")
    fun getPDDPromotionUrl(@Body param: RequestBody): Observable<RemoteResultBean<PDDPromotionUrlBean>>

    /**
     * 搜索获取淘宝商品
     */
    @GET("qxsh/app/item/findPageByKeyword")
    @Headers("url_type:remote")
    fun getTBGoodsList(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<SearchTBGoodsListBean>>

    /**
     * 升级体验官微信
     */
    @POST("qxsh/app/user/upgrad/wxPay")
    @Headers("url_type:remote")
    fun getWXTYGPay(@Body param: RequestBody): Observable<RemoteResultBean<TYGWXPAYBean>>

    /**
     * 升级合伙人支付查询接口
     */
    @POST("qxsh/app/user/upgrad/orderStauts")
    @Headers("url_type:remote")
    fun getHHRStauts(@Body param: RequestBody): Observable<RemoteResultBean<List<CurriculumPayBean>>>

    /**
     * 升级体验官支付宝
     */
    @GET("q11api/api/UserUpgrade/getAlipayParameter")
    @Headers("url_type:wxcard")
    fun getZFBTYGPay(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<String>>

    /**
     * 获取种草banner
     */
    @GET("qxsh/app/article/getBanner")
    @Headers("url_type:remote")
    fun getZCBanner(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<LifeTopBanner>>>

    /**
     * 获取种草分类页面数据
     */
    @GET("qxsh/app/article/getPage")
    @Headers("url_type:remote")
    fun getZCPageList(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<SXYListBean>>

    /**
     * 获取分享App链接
     */
    @GET("qxsh/app/share/shareApp")
    @Headers("url_type:remote")
    fun getShareAppUrl(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<String>>

    /**
     * 腾讯地图获取坐标距离
     */
    @GET("ws/distance/v1/?")
    @Headers("url_type:txmapurl")
    fun getTXMapjl(@QueryMap map: Map<String, String>): Observable<TXResultBean<TXMapJLBean>>

    /**
     *邀请好友海报数据
     */
    @GET("qxsh/app/share/getPoster")
    @Headers("url_type:remote")
    fun getShareBanner(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<ShareBannerBean>>

    /**
     * 获取分享App链接
     *
     */
    @GET("qxsh/app/index/getTopBanner")
    @Headers("url_type:remote")
    fun getHomeTopBanner(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<TopBanner>>>

    /**
     * 获取红包弹窗数据
     */
    @GET("qxsh/app/user/userHongBao/getMoneyByUserId")
    @Headers("url_type:remote")
    fun getRedPacketData(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<RedPacketBean>>

    /**
     * 开启红包
     */
    @GET("qxsh/app/user/userHongBao/saveMoney")
    @Headers("url_type:remote")
    fun openRedPacket(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<String>>

    /**
     * 获取用户收益testurl
     */
    @GET("qxsh/app/user/earnings/getEarnings")
    @Headers("url_type:remote")
    fun getEarnings(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<UserEarningsBean>>

    /**
     * 获取用户待结算收益明细
     */
    @GET("qxsh/app/user/earnings/getForecastEarnings")
    @Headers("url_type:remote")
    fun getForecastEarnings(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<UserEarningsBean>>

    /**
     * 获取用户已结算收益明细
     */
    @GET("qxsh/app/user/earnings/getAlreadyEarnings")
    @Headers("url_type:remote")
    fun getAlreadyEarnings(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<UserEarningsBean>>

    /**
     * 支付宝活动链接
     */
    @GET("qxsh/app/index/getAlipayLink")
    @Headers("url_type:remote")
    fun getAlipayLink(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<HomeActivityLink>>

    /**
     * 淘宝授权登录链接
     */
    @GET("qxsh/app/authorization/getAuthUrl")
    @Headers("url_type:remote")
    fun getAuthUrl(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<String>>

    /**
     * 淘宝授权登录完成后换取用户
     */
    @POST("qxsh/app/authorization/bandRealtion")
    @Headers("url_type:remote")
    fun bandRealtion(@Body param: RequestBody): Observable<RemoteResultBean<TBBandRealtionBean>>

    /**
     * 淘宝授权登录链接
     */
    @GET("qxsh/app/userPay/notifyUrl")
    @Headers("url_type:remote")
    fun getSXOrderNum(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<String>>

    /**
     * 24小时热销获取分类数据
     */
    @GET("qxsh/revision/indexPage/get24HClassfy")
    @Headers("url_type:remote")
    fun getDayLongClass(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<HomeClassBean>>>

    /**
     * 24小时热销获取商品列表数据
     */
    @GET("qxsh/revision/indexPage/getHotSale")
    @Headers("url_type:remote")
    fun getDayLongHotSell(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<HDKGoodsBean>>
    /**
     * 种草精选单品页面数据
     */
    @GET("qxsh/revision/wantToBuy/circleOfFriends")
    @Headers("url_type:remote")
    fun getCircleOfFriends(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<SingleCommodityDataBean>>

    /**
     * 种草精选专场页面数据
     */
    @GET("qxsh/revision/wantToBuy/supSpecialTheme")
    @Headers("url_type:remote")
    fun getSupSpecialTheme(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<BoutiqueDataBean>>

    /**
     * 种草精选专场列表页面数据
     */
    @GET("qxsh/revision/wantToBuy/specialTheme")
    @Headers("url_type:remote")
    fun getTopicGoodList(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<HDKGoodsBean>>

    /**
     * 种草好货专场页面数据
     */
    @GET("qxsh/revision/wantToBuy/goodsSpecial")
    @Headers("url_type:remote")
    fun getGoodsSpecial(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<GoodsCommodityBean>>

    /**
     * 首页获取播播酱数据
     */
    @GET("qxsh/revision/indexPage/getBobo")
    @Headers("url_type:remote")
    fun getBoBOData(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<List<HomeBroadcastBean>>>

    /**
     * 判断用户是否是新人
     */
    @GET("qxsh/revision/zero/judgeIsNew")
    @Headers("url_type:remote")
    fun getIsNewMen(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<String>>

    /**
     * 获取品牌专场分类数据
     */
    @GET("qxsh/revision/wantToBuy/getBrandClassfy")
    @Headers("url_type:remote")
    fun getBrandClassfy(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<BrandSpecialClassBean>>

    /**
     * 获取品牌专场分类列表数据
     */
    @GET("qxsh/revision/wantToBuy/getBrand")
    @Headers("url_type:remote")
    fun getBrandListData(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<BrandSpecialListBean>>

    /**
     * 获取品牌专场品牌列表数据
     */
    @GET("qxsh/revision/wantToBuy/getSingleBrandInfor")
    @Headers("url_type:remote")
    fun getSingleBrandInfor(@QueryMap map: Map<String, String>): Observable<RemoteResultBean<BrandSpecialItemBean>>
}